package com.panda.web.service.py;

import com.fasterxml.jackson.core.JsonProcessingException;

import com.panda.web.domain.vo.commons.CompanyJobVO;
import com.panda.web.entity.py.Job;

import java.text.ParseException;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.panda.web.entity.py.JobComplaint;
import com.panda.web.utils.pageutils.PageResult;
import com.panda.web.domain.dto.JobDTO;
import com.panda.web.domain.vo.JobVO;


/**
 * 职位Service接口
 * 
 * @author cpanda
 * @date 2025-03-03
 */
public interface IJobService extends IService<Job> {
    //分页查询
    PageResult<JobVO> PageList(JobDTO dto, Integer pageNum, Integer pageSize) throws JsonProcessingException, ParseException;
    //无分页查询
    List<JobVO> choiceList(JobDTO dto) throws JsonProcessingException, ParseException;
    //回显数据
    JobVO selectById(Long jobId) throws ParseException;

    PageResult<CompanyJobVO> getHot(JobDTO dto, Integer pageNum, Integer pageSize);

    PageResult<JobVO> selectByOpenid(JobDTO dto, Integer pageNum, Integer pageSize) throws ParseException;


    PageResult<JobVO> getJobList(JobDTO dto, Integer pageNum, Integer pageSize) throws JsonProcessingException, ParseException;
    //    JobVO selectByHQYId(Long id) throws ParseException;;
    JobVO selectByHQYId(JobDTO dto)throws ParseException;


    int insert(JobComplaint complaint);

    PageResult<JobComplaint> selectByJobComplaint(JobComplaint complaint, Integer pageNum, Integer pageSize);

    PageResult<JobVO> selectBycesAAA(JobDTO dto, Integer pageNum, Integer pageSize);

    PageResult<CompanyJobVO> getHotTest(JobDTO dto, Integer pageNum, Integer pageSize);

    PageResult<JobVO> getQTJobList(JobDTO dto, Integer pageNum, Integer pageSize) throws ParseException, JsonProcessingException;

    PageResult<JobVO> getQTJobAAList(JobDTO dto, Integer pageNum, Integer pageSize) throws ParseException, JsonProcessingException;
}
